В шаге "Шаг 16 - GUIDGEN" рассказывалось как получить GUID с помощью специальной утилиты. Но его можно получить и программным путем. Для этого и существует функция CoCreateGuid():
HRESULT CoCreateGuid ( GUID *pguid // указатель на структуру GUID );
Вот пример:
// TestGenerate.cpp : Defines the entry point for the console application.
//
#include "stdafx.h"
#include "objbase.h"
#include "iostream.h"
void main()
{
HRESULT hr;
GUID guid;
hr=CoCreateGuid(&guid);
if (!FAILED(hr))
{
LPOLESTR szGUID = new WCHAR [39];
StringFromGUID2(guid,szGUID,39);
wprintf(L"Inherited ObjectType GUID: %s\n",szGUID);
}
else cout << "Error create Guid" << endl;
}
В результате в окне Вы увиде сформированный GUID:
Inherited ObjectType GUID: {75A73880-02BF-11D5-B4A9-E0034BC10000}
Press any key to continue
Только сам GUID будет другим, ведь он же уникальный.